<?php

class Application_Model_DbTable_Auxilios extends Zend_Db_Table_Abstract {

    protected $_name = 'auxilios';

    public function agregarEntregaAuxilio($codigo, $fecha, $facultad, $tipoAuxilio) {

        $programas = new Application_Model_DbTable_Progapoyoalimen();
        $programaActual = $programas->getcodigoprog();

        $data = array(
            'codigoEstudiante' => $codigo,
            'fechaUsoAuxilio' => $fecha,
            'codigoProgApoyoAlimen' => $programaActual,
            'sedeUsoAuxilio' => $facultad,
            'tipoAuxilio' => $tipoAuxilio);
        $this->insert($data);
    }

    public function comprobarAsistencia($codigo) {
        $fecha = date("Y/m/d");
        $db = Zend_Db_Table::getDefaultAdapter();
        $select = $db->select()
                ->from(array('auxilios'), array('count' => 'count(codigoEstudiante)'))
                ->where('codigoEstudiante = ?', $codigo)
                ->where('fechaUsoAuxilio = ?', $fecha);

        $resultados = Zend_Db_Table::getDefaultAdapter()->fetchRow($select);
        if ($resultados["count"] > 0) {
            return true;
        } else {
            return false;
        }
    }

    public function consultarTodos($programa, $fecha1, $fecha2) {
        $db = Zend_Db_Table::getDefaultAdapter();
        $select = $db->select();
        $select->from(array('a' => 'auxilios'), array('fecha' => 'a.fechaUsoAuxilio', 'cnt' => 'count(a.codigoEstudiante)'))
                ->join(array('e' => 'estudiantes'), 'e.codigoEstudiante = a.codigoEstudiante'
                        , array())
                ->join(array('pc' => 'proycurriculares'), 'pc.codigoProyCurricular = e.codigoProyCurricular'
                        , array('pc.nombre'))
                ->join(array('pa' => 'progapoyoalimen'), 'pa.codigoprogapoyoalimen = a.codigoprogapoyoalimen'
                        , array())
                ->where('pa.codigoprogapoyoalimen = ?', $programa)
                ->where("a.fechaUsoAuxilio between '" . $fecha1 . "' and '" . $fecha2 . "'")
                ->group('Date(a.fechaUsoAuxilio)')
                ->group('pc.codigoProyCurricular');

        return Zend_Db_Table::getDefaultAdapter()->fetchAll($select);
    }

    public function consultarEspecifico($programa, $fecha1, $fecha2, $sede) {
        $db = Zend_Db_Table::getDefaultAdapter();
        $select = $db->select();
        $select->from(array('a' => 'auxilios'), array('fecha' => 'a.fechaUsoAuxilio', 'cnt' => 'count(a.codigoEstudiante)'))
                ->join(array('e' => 'estudiantes'), 'e.codigoEstudiante = a.codigoEstudiante'
                        , array())
                ->join(array('pc' => 'proycurriculares'), 'pc.codigoProyCurricular = e.codigoProyCurricular'
                        , array('pc.nombre'))
                ->join(array('pa' => 'progapoyoalimen'), 'pa.codigoprogapoyoalimen = a.codigoprogapoyoalimen'
                        , array())
                ->where('pa.codigoprogapoyoalimen = ?', $programa)
                ->where("a.fechaUsoAuxilio between '" . $fecha1 . "' and '" . $fecha2 . "'")
                ->where('a.sedeusoauxilio = ?', $sede)
                ->group('Date(a.fechaUsoAuxilio)');

        return Zend_Db_Table::getDefaultAdapter()->fetchAll($select);
    }

    public function asistenciaBeneficiarioTodasFacultades($fecha1, $fecha2) {
        $db = Zend_Db_Table::getDefaultAdapter();
        $select = $db->select();

        $select->from(array('a' => 'auxilios'), array('fecha' => 'a.fechaUsoAuxilio', 'cnt' => 'count(a.codigoEstudiante)'))
                ->join(array('e' => 'estudiantes'), 'e.codigoEstudiante = a.codigoEstudiante'
                        , array('codigo' => 'e.codigoEstudiante', 'nombres' => 'e.nombres', 'apellidos' => 'e.apellidos',
                    'nroDoc' => 'e.nroDocIdentidad', 'tipoDoc' => 'e.tipoDocIdentidad', 'genero' => 'e.genero'))
                ->join(array('pc' => 'proycurriculares'), 'pc.codigoProyCurricular = e.codigoProyCurricular'
                        , array('pc.nombre'))
                ->join(array('f' => 'facultades'), 'f.codigoFacultad = pc.codigoFacultad'
                        , array('f.nombreFacultad'))
                /*->join(array('pa' => 'progapoyoalimen'), 'pa.codigoprogapoyoalimen = a.codigoprogapoyoalimen'
                        , array())*/
                //->where('pa.codigoprogapoyoalimen = ?', $programa)
                ->where("a.fechaUsoAuxilio between '" . $fecha1 . "' and '" . $fecha2 . "'")
                ->where('a.sedeusoauxilio = ?', $sede)
                ->group('Date(a.fechaUsoAuxilio)');

        return Zend_Db_Table::getDefaultAdapter()->fetchAll($select);
    }
    //codigoProyCurricular

}
